package cn.xhjava.crm.workbench.mapper;

import cn.xhjava.crm.workbench.domain.Clue;
import cn.xhjava.crm.workbench.domain.FunnelVO;

import java.util.List;
import java.util.Map;

public interface ClueMapper {

    int deleteByPrimaryKey(String id) throws Exception;

    int insert(Clue record) throws Exception;

    int insertSelective(Clue record) throws Exception;

    Clue selectByPrimaryKey(String id) throws Exception;

    int updateByPrimaryKeySelective(Clue record) throws Exception;

    int updateByPrimaryKey(Clue record) throws Exception;

    List<Clue> selectForPage(Map<String, Object> map) throws Exception;

    int selectCountForPage(Map<String, Object> map) throws Exception;

    Clue selectClueForDetailById(String id) throws Exception;

    List<FunnelVO> queryClueCountGroupByCreateTime() throws Exception;

    List<FunnelVO> queryClueCountGroupBySource() throws Exception;

    List<FunnelVO> queryClueCountGroupByState() throws Exception;
}